Many forms of shared computing resources have been implemented. For example, a web server executing on a single computing device may be shared among a multitude of different customers. Such customers may purchase web hosting plans that include varying amounts of computing resources such as, for example, processing capacity, memory, data storage, network bandwidth, and so on. It is not always the case that computing resources included in a web hosting plan are reserved for all customers.
To illustrate, a web hosting provider may allocate ten customers to one web server, with each customer being promised an allocation of 100 gigabytes (GB) of data storage. The web server may provide 500 GB of data storage, even though the web hosting provider has promised the customers a total of 1,000 GB of data storage. The customers may not be using their entire promised allocation simultaneously, making the 500 GB of actual data storage resource efficient. However, when the available data storage of the web server drops below a threshold, for example, 200 GB, the web hosting provider may need to install additional data storage capacity in the web server or reallocate customers to other web servers with spare capacity.